package bean;

import javax.swing.JLabel;

public class Cronometro extends Thread{
	private double contador;
	private boolean contar;
	private JLabel label;
	
	public Cronometro(JLabel l) {
		super();
		label = l;
		contar = false;
	}

	@Override
	public synchronized void start() {
		contar = true;
		super.start();
	}

	@Override
	public void run() {
		while (contar){
			try {
				sleep(10);
				contador++;
				label.setText(convertirTiempo(contador));
			} catch (InterruptedException e) {
				e.printStackTrace();
			}
		}
		super.run();
	}

	@Override
	public void interrupt() {
		contar = false;
	}
	
	public String convertirTiempo(double cont){
		int decimas, segundos, minutos;		
		double tiempo;
		tiempo = cont;
		decimas = (int) (tiempo % 100);
		tiempo = (tiempo - decimas) / 100;
		segundos = (int) (tiempo % 60);
		tiempo = (tiempo - segundos) / 60;
		minutos = (int) tiempo;
		String cad = "";
		if (minutos < 10)
			cad = "0";
		cad = cad.concat(String.valueOf(minutos)).concat(":");
		
		if (segundos < 10)
			cad = cad.concat("0");
		cad = cad.concat(String.valueOf(segundos)).concat(":");
		
		if (decimas < 10)
			cad =  cad.concat("0");
		cad = cad.concat(String.valueOf(decimas));		
		return cad;
	}

	public double getContador() {
		return contador;
	}
	
}